package playing;


import java.awt.Image;
import java.awt.Frame;
import java.awt.event.*;
import java.awt.*;


/** Classe qui ouvre une fenetre et qui contient l'aide.
 * @author Cecile FRANCOU
 * @author Sophia GALLARDO
 * @version 1.1.6 
 * @see Interaction
 */



public class Aide extends Frame implements ActionListener{

  

    /** bouton Ok*/
    private Button Ok_boutton;

    /** image de l'aide*/
    private Image image_aide;
    
    /** toolkit pour l'aide */
    private Toolkit toolkit_aide;

    /** interaction entre les joueurs, decors et le labyrinthe */
    private Interaction interaction;
    
    /** Ouvre une fenetre ou est ecrite l'aide. 
     * @param interaction interaction entre les joeurs et le labyrinthe.
     */
    public Aide(Interaction interaction) {
        this.interaction = interaction;
        new Frame(); // fenetre
        setTitle("Aide du Trap Trap Bisous ! "); // titre de la fenetre
        setSize(400,450); // taille de la fenetre
        setLocation(400,400); // localisation de la fenetre
        setLayout(new BorderLayout(200,200));
        construire_boutton(); // affichage des boutons
        setVisible(true); // fenetre visible
    }
 
    /** Construit des boutons dans la fenetre.
     */
    private void construire_boutton() {
        Panel panel_bouton = new Panel();
        // on donne une couleur au Panel
        panel_bouton.setBackground(new Color(255,128,64));
        // bouton Ok
        Ok_boutton = new Button("OK");
        Ok_boutton.addActionListener(this);
        // bouton Cancel
        panel_bouton.add(Ok_boutton);
        add("South",panel_bouton);
    }
    
    /** Dessine la fenetre.
     * @param g graphique.
     */
    public void paint(Graphics g){
        toolkit_aide = this.getToolkit();
        image_aide = toolkit_aide.getImage("Images\\aide.gif");
        g.drawImage(image_aide,0,20,400,400,this);
    }

    /** Gere les evenements des boutons.
     * @param e evenement.
     */
    public void actionPerformed(ActionEvent e) {
        if (((Button)e.getSource()).getLabel() == "OK"){
            setVisible(false);
            if (interaction != null)
                interaction.activer_threads(); // on re-active les threads
        }
    }
    
}// fin classe
